An efficient multi-channel digital audio signal coding method has been developed for storage or transmission applications such as the digital video disc (DVD) player and the high definition digital TV receiver (set-top-box). A description of the standard can be found in the ATSC Standard, "Digital Audio Compression (AC-3) Standard", Document A/52, Dec. 20, 1995. The standard defined a coding method for up to six channel of multi-channel audio, that is, the left, right, centre, surround left, surround right, and the low frequency effects (LFE) channel.
In this coding method, the multi-channel digital audio source is compressed block by block at the encoder by first transforming each input block audio PCM samples into frequency coefficients using an analysis filter bank, then quantizing the resulting frequency coefficients into quantized coefficients with a determined bit allocation strategy, and finally formatting and packing the quantized coefficients and bit allocation information into bit-stream for storage or transmission.
Depending upon the spectral and temporal characteristics of the audio source, adaptive transformation of the audio source is done at the encoder to optimize the frequency/time resolution. This is achieved by adaptive switching between two transformations with long transform block length or shorter transforms block length. The long transform block length which has good frequency resolution is used for improved coding performance; on the other hand, the shorter transform block length which has a greater time resolution is used for audio input signals which change rapidly in time.
At the decoder side, each audio block is decompressed from the bitstream by first determining the bit allocation information, then unpacking and de-quantizing the quantized co-efficients, and inverse transforming the resulting coefficients based on determined long or shorter transform length to output audio PCM data. The decoding processes are performed for each channel in the multi-channel audio data.
For reasons such as overall systems cost constrain or physical limitation in terms of number of output loudspeakers that can be used, downmixing of the decoded multi-channel audio is performed so that the number of output channels at the decoder is reduced to two channels, hence the left and right (L.sub.m and R.sub.m ) channels suitable for conventional stereo audio amplifier and loudspeakers systems.
Basically, downmixing is performed such that the multi-channel audio information is preserved while the number of output channels is reduced to only two channels. The method of downmixing may be described as: EQU L.sub.m =a.sub.0 L+a.sub.1 R+a.sub.2 C+a.sub.3 L.sub.5 +a.sub.4 R.sub.5 +a.sub.5 LFE EQU R.sub.m =b.sub.0 L+b.sub.1 R+b.sub.2 C+b.sub.3 L.sub.5 +b.sub.4 R.sub.5 +b.sub.5 LFE
where
L.sub.m : Mixed down Left channel output PA1 R.sub.m : Mixed down Right channel output PA1 L: Left channel input PA1 R: Right channel input PA1 C: Centre channel input PA1 L.sub.3 :Surround left channel input PA1 R.sub.3 :Surround right channel input PA1 a.sub.0-5 : downmixing coefficients for left channel output PA1 b.sub.0-5 :downmixing coefficients for right channel output. PA1 (a) downmixing and frequency coefficients of each audio channel within said block which are identified as long transform block by said long and shorter transform block information to form a left mixed down for long transform block and a right mixed down for long transform block; PA1 (b) downmixing said frequency coefficients of each audio channels within the said block which are identified as shorter transform block by said long and shorter transform block information to form a left mixed down for shorter transform block and a right mixed down for shorter transform block; PA1 (c) inverse transforming each of said left mixed down for long transform block, said right mixed down for long transform block, said left mixed down for shorter transform block, and said right mixed down for shorter transform block to produce a left mixed down long inverse transformed block, a right mixed down long inverse transformed block, a left mixed down shorter inverse transformed block, and a right mixed down shorter inverse transformed block respectively; PA1 (d) adding said left mixed down long inverse transformed block and said left mixed down shorter inverse transformed block to form a left total mixed down; and PA1 (e) adding said right mixed down long inverse transformed block and said right mixed down shorter inverse transformed block to form a right total mixed down. PA1 (a) means for downmixing said frequency coefficients of each audio channel identified as long transform block by said long and shorter transform block information to form a left mixed down for long transform block and a right mixed down for long transform block; PA1 (b) means for downmixing said frequency coefficients of each audio channel identified as shorter transform block by said long and shorter transform block information to form a left mixed down for shorter transform block and a right mixed down for shorter transform block; PA1 (c) means for inverse transforming each of said left mixed down for long transform block, said right mixed down for long transform block, said left mixed down for shorter transform block, and said right mixed down for shorter transform block to produce a left mixed down long inverse transformed block, a right mixed down long inverse transformed block, a left mixed down shorter inverse transformed block, and a right mixed down shorter inverse transformed block respectively; PA1 (d) means for adding said left mixed down long inverse transformed block and said left mixed down shorter inverse transformed block to form a left total mixed down; PA1 (e) means for adding of said right mixed down long inverse transformed block and said right mixed down shorter inverse transformed block to form a right total mixed down. PA1 (a) parsing the said multi-channel audio bitstream to obtain bit allocation information on each audio channel within said block; PA1 (b) unpacking quantized frequency coefficients from said block using said bit allocation information; and PA1 (c) de-quantizing said quantized frequency coefficients to obtain said frequency coefficients using said bit allocation information. PA1 (a) the left total mixed down is subjected to a window overlap/add process wherein the samples within the left total mixed down are weighted, de-interleaved, overlapped and added to samples of a previous block; PA1 (b) the right total mixed down is subjected to a window overlap/add process wherein the samples within right total mixed down are weighted, de-interleaved, overlapped and added to samples of a previous block; and PA1 (c) the results of the window overlap/add are subjected to an output process wherein the results of the window overlap/add process are formatted and outputted. PA1 (c) the results of the window overlap/add are subjected to an output process wherein the results of the window overlap/add process are formatted and outputted.
Downmixing method or coefficients may be designed such that the original or the approximate of the original decoded multichannel signals may be derived from the mixed down Left and Right channels.
For decoders in systems or applications where downmixing is required, the decoding processes which include the inverse transformation are required for all encoded channels before downmixing can be done to generate the two output channels. The implementation complexity and the computation load is not reduced for such present art decoders even though only two output channels are generated instead of all channels in the multi-channel bitstream.
To significantly reduce the implementation complexity and the computation load, the downmixing process should be performed at an early stage within the decoding processes such that the number of channels required to be decoded are reduced for the remaining decoding processes. In particular, since the inverse transform process is a complex and computationally intensive process, the downmixing should be performed on the inverse quantized frequency coefficients before the inverse transform. One example of such solution is given in U.S. Pat. No. 5,400,433 for which the inverse transform process was assumed to be linear. Another example is referred to in an article by Steve VERNON "Design and Implementation of AC-3 Coders", IEEE Transactions on Consumer Electronics, vol. 41, no. 3, August 1995, NEW YORK US, pages 754-759. Again, downmixing in the frequency domain is disclosed but only in the case where block switching is not used.
Due to the fact that inverse transform process of present art is adaptive in long or shorter transform block length depending upon the spectral and temporal characteristics of each coded audio channel, it is not a linear process and therefore the known downmixing process cannot be performed first. That is, combining the channels before the inverse transform process will not produce the same output that is produced by combining the channels after the inverse transform process.